Localization and Register Sharing for Predicate Abstraction

نویسندگان

  • Himanshu Jain
  • Franjo Ivancic
  • Aarti Gupta
  • Malay K. Ganai
چکیده

In the domain of software verification, predicate abstraction has emerged to be a powerful and popular technique for extracting finite-state models from often complex source code. In this paper, we report on the application of three techniques for improving the performance of the predicate abstraction refinement loop. The first technique allows faster computation of the abstraction. Instead of maintaining a global set of predicates, we find predicates relevant to various basic blocks of the program by weakest pre-condition propagation along spurious program traces. The second technique enables faster model checking of the abstraction by reducing the number of state variables in the abstraction. This is done by re-using Boolean variables to represent different predicates in the abstraction in a safe way. However, some predicates are useful at many program locations and discovering them lazily in various parts of the program leads to a large number of abstraction refinement iterations. The third technique attempts to identify such predicates early in the abstraction refinement loop and handles them separately by introducing dedicated state variables for such predicates. We have incorporated these techniques into NEC’s software verification tool F-Soft, and present promising experimental results for various case studies using these techniques.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

System- versus RT-Level Verification of Systems-on-Chip by Compositional Path Predicate Abstraction

A formal methodology for system verification of System-on-Chip (SoC) designs is proposed. It ensures that systemlevel models are created which are sound abstractions of the concrete implementations at the Register Transfer Level (RTL). For each SoC module at the RTL an abstract description is obtained by path predicate abstraction. Path predicate abstraction is introduced based on the notion of...

متن کامل

SAT based Abstraction Refinement for Hardware Verification

Model checking is a widely used automatic formal verification technique. Despite the recent advances in model checking technology, its application is still limited by the state explosion problem. For model checking large real world systems, abstraction is essential. This thesis investigates abstraction techniques for the efficient verification of hardware designs with thousands of registers. A ...

متن کامل

F-Soft: Software Verification Platform

In this paper, we describe our verification tool F-Soft which is developed for the analysis of C programs. Its novelty lies in the combination of several recent advances in formal verification research including SAT-based verification, static analyses and predicate abstraction. As shown in the tool overview in Figure 1, we translate a program into a Boolean model to be analyzed by our verificat...

متن کامل

VCEGAR: Verilog CounterExample Guided Abstraction Refinement

ion Refinement Himanshu Jain1, Daniel Kroening2, Natasha Sharygina1,3, and Edmund Clarke1 1 Carnegie Mellon University, School of Computer Science 2 ETH Zuerich, Switzerland 3 Informatics Department, University of Lugano Abstract. As first step, most model checkers used in the hardware industry convert a high-level register transfer language (RTL) design into As first step, most model checkers ...

متن کامل

Refining Approximations in Software Predicate Abstraction

ion Thomas Ball†, Byron Cook†, Satyaki Das, and Sriram K. Rajamani† † Microsoft Corporation ? Stanford University Abstract. Predicate abstraction is an automatic technique that can be used to find abstract models of large or infinite-state systems. In tools like Slam, where predicate abstraction is applied to software model checking, a number of heuristic approximations must be used to improve ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005